/* eslint valid-jsdoc: "off" */

'use strict';

/**
 * @param {Egg.EggAppInfo} appInfo app info
 */
module.exports = appInfo => {
  /**
   * built-in config
   * @type {Egg.EggAppConfig}
   **/
  const config = (exports = {});

  // use for cookie sign key, should change to your own and keep security
  config.keys = appInfo.name + '_1633936280931_6881';

  // add your middleware config here
  config.middleware = [];

  // add your user config here
  const userConfig = {
    // myAppName: 'egg',
    security: {
      csrf: {
        enable: false,
        ignoreJSON: true,
      },
      // domainWhiteList: ['http://localhost:3000']
    },
    mongoose: {
      client: {
        url: 'mongodb://127.0.0.1:27017/gx',
        options: {
          autoReconnect: true,
        },
        // mongoose global plugins, expected a function or an array of function and options
        // plugins: [createdPlugin, [updatedPlugin, pluginOptions]],
        plugins: [],
      },
    },
    multipart: {
      fileExtensions: [
        '.apk',
        '.pptx',
        '.docx',
        '.csv',
        '.doc',
        '.ppt',
        '.pdf',
        '.pages',
        '.wav',
        '.mov',
        '.svg',
      ],
    },
  };

  return {
    ...config,
    ...userConfig,
  };
};
